fix: legacy diff options not working due to merge order #142
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Fixes a bug where the legacy diff options
vertical_splitandopen_in_current_tabwere not working correctly.Problem
The backward compatibility mapping was checking if fields were
nilafter merging with defaults, but those fields were already populated by the merge, so the legacy options were never applied.Example of broken behavior:
Solution
Changed the logic to unconditionally apply legacy option mappings when the legacy options are present. This ensures backward compatibility without complex conditional checks.
Changes:
vertical_split=falsenow correctly setslayout="horizontal"vertical_split=truenow correctly setslayout="vertical"open_in_current_tab=falsenow correctly setsopen_in_new_tab=trueopen_in_current_tab=truenow correctly setsopen_in_new_tab=falseTesting
Manually tested all scenarios:
make formatpasses (no changes needed)🤖 Generated with Claude Code